Native Google Drive Sync (App Data Storage)#2600
Native Google Drive Sync (App Data Storage)#2600ramailo1 wants to merge 4 commits intorecloudstream:masterfrom
Conversation
fire-light42
left a comment
There was a problem hiding this comment.
-
We have an AI policy, please read and update your PR:
https://github.com/recloudstream/cloudstream/blob/master/AI-POLICY.md -
Read the issue with backup and sync at #1641 (comment) The current implementation is insufficient and will create a lot of confusion using it.
-
Check out #2411 and the issues related to it, as they implement the same feature.
🚀 Status Update: Stabilization & UI PolishedSince the initial push, I have implemented several critical stability and UX improvements to ensure the new sharded sync system is production-ready. ✅ Latest Stability Fixes
🛠 Core Architecture Reminder
📋 Setup for Maintainers
|
☁️ Cloud Sync Data Mapping DetailsFor reviewers and contributors, here is a detailed breakdown of the data I have gathered and pushed by the Cloud Sync system. This maps out exactly what is included in the payload while preventing accidental synchronization of massive or sensitive local files. The system segments the uploaded data into two JSON shards: 1. Datastore Shard (
|
|
Pretty decent |
Feature: Native Google Drive Sync (App Data Storage)
📝 Overview
This PR implements a native, privacy-safe synchronization provider using Google Drive's App Data folder. Unlike traditional trackers (AniList/MAL), this feature syncs the entire application state (settings, bookmarks, and local data) across devices.
🛡️ Privacy & Security
appDataFolderscope, which is hidden from the user's main Drive UI and inaccessible to other apps.GoogleAuthUtil).🛠️ Technical Changes
SyncManager: A modern implementation usingAuthorizationRequestandIdentityclients for OAuth2 token management.BackupUtilsIntegration: Seamlessly hooks into the existingBackupFilearchitecture. Special care was taken to preserve the latest upstream fixes (e.g.,DOWNLOAD_HEADER_CACHE).SyncSettingsFragmentproviding "Push Now", "Pull Now", and "Auto-sync" options.libs.versions.toml).⚙️ Setup for Maintainers
Important
To enable this feature in official builds, the following setup is required in the Google Cloud Console:
drive.appdatascope.google.client_id=your_client_id_here.apps.googleusercontent.com✅ Verification & Compatibility
recloudstream/cloudstream(Master) as of Feb 28, 2026.Note: I've verified the navigation graph and fragment bindings, everything is ready for a prompt merge.